package com.ctshk.rpc.finance.service;

import com.ctshk.common.dto.Result;
import com.ctshk.common.model.PageResponse;
import com.ctshk.common.model.TokenUser;
import com.ctshk.rpc.finance.dto.advance.AdvancePaymentDetailDTO;
import com.ctshk.rpc.finance.dto.advance.AdvancePaymentManageListDTO;
import com.ctshk.rpc.finance.dto.supplier.AccountSummaryDTO;
import com.ctshk.rpc.finance.req.advance.AdvancePaymentIdReq;
import com.ctshk.rpc.finance.req.advance.AdvancePaymentListReq;
import com.ctshk.rpc.finance.req.supplier.AccountIdReq;

import java.util.List;

/**
 * <p>
 * 财务预收款管理 服务类
 * </p>
 *
 * @author 谢涛
 * @since 2021-03-23
 */
public interface IFinanceAdvancePaymentService {

    /**
     * 列表
     * @param req
     * @param currentUser
     * @return
     */
    Result<PageResponse<AdvancePaymentManageListDTO>> list(AdvancePaymentListReq req, TokenUser currentUser);

    /**
     * 查看
     * @param req
     * @return
     */
    Result<AdvancePaymentDetailDTO> detailBase(AdvancePaymentIdReq req);

    /**
     * 申请销账-查询客户预收款额度
     * @param req
     * @return
     */
    Result<List<AccountSummaryDTO>> accountSummary(AccountIdReq req);
}
